The protocols used in the Internet, as originally intended, permit only one server to correspond to a given service and a given domain name. Transfer control protocol (TCP) and Internet protocol (IP), referred to as TCP/IP, are examples of Internet protocols that were designed to allow one application running on one computer to communicate with another application running on another computer or on the same computer. The one-to-one mapping is fundamental to the protocols used, and the various infrastructure protocols that were created to support a rapidly growing global TCP/IP-based Internet were designed to facilitate and support the one-to-one communications.
As an example of one-to-one communication, a user of a client device browser program, or similar program, enters the domain name of an Internet site, enters a uniform resource locator (URL) that includes a domain name and a protocol type specification, clicks on a hyperlink to a domain name or to a URL, or otherwise requests a domain name or a URL using hypertext transfer protocol (HTTP), file transfer protocol (FTP) or Telnet, and the browser program or similar program sends a request to a domain name system (DNS) server to look up the domain name and obtain the Internet address that corresponds to the domain name or the URL. The DNS server responds by sending the Internet address of the server that serves the selected Internet site or domain name. Only one Internet address is stored for each domain name.
Other Internet protocols are similarly constructed, such as Hypertext Transfer Protocol (HTTP), Diffserv, IPsec, Secure Sockets Layer (SSL), etc.
The recent explosive growth in Internet and World Wide Web (Web) activity has created a demand for some Web sites or Internet services that far exceeds the capacity of a single server, and the expected growth of multimedia streaming services such as audio and video promises to exacerbate the problem. To prevent server overloading, a “server farm” is used in which multiple servers each store the same Web pages or Internet services. A switching device, such as a content switch, is disposed between the servers of the server farm and the rest of the Internet to process incoming requests from client devices and send the requests to one of the servers. Their incoming request includes an Internet address that corresponds to the desired domain name but which actually directs the request to the switching device. Because the Internet permits only one network address to correspond to a given domain name, the presence of multiple servers that each serve the same Web sites or Internet pages cannot be made known to the client device or to the servers. The content switch must therefore re-map the Internet address contained in the request with the Internet address of the respective server so that it appears to the server that it is connected directly to the client device. Further, the content switch must send responses to the client device that emulate the existence of only a single server and must also re-map the Internet address contained in the responses.
The re-mapping operations thus requires additional content switch processing resources. However, applications that require content switches are becoming increasingly common, thus further taxing the content switch resources and potentially creating processing delays. Content switches are also costly.
It is therefore desirable that a network be configured that accommodates the existence of multiple servers for a given service. Thus, it is desirable that a one-to-many mapping be supported by the network.
Further, newer services, such as multimedia streaming services, required additional bandwidth that is not needed for either network functions. However, many of the presently used applications or present networks do not permit the network or a server to provide different qualities of service for a respective client or for a particular service.
It is therefore desirable to provide the network with the capability of providing different qualities of service.